Method and apparatus for decoding

ABSTRACT

In a puncturing section  102,  input memory  201  temporarily stores data inputted to the puncturing section  102,  a controller  202  distinguishes data to be added, a switch  203  selects data to be added in accordance with control of the controller  202,  an adder  204  adds data (namely, data subjected to repetition by a transmitter side) selected by the switch  203,  and output memory  205  temporarily stores data outputted from the puncturing section  102.

TECHNICAL FIELD

[0001] The present invention relates to a decoding apparatus and adecode processing method.

BACKGROUND ART

[0002] In a third-generation mobile radio communication system, ratematching processing is often carried out in coding or decodingreceived/transmitted data. The rate matching processing is processing inwhich a transmitter side increases or decreases the number of bits ofdata to adjust coded data to a frame length and a receiver sidedecreases the number of bits corresponding to the number of bitsincreased by the transmitter side, or increases the number of bitscorresponding to the number of bits decreased by the transmitter side.In the explanation set forth below, processing for increasing the numberof bits of data performed by the transmitter side refers to as“repetition” while processing for decreasing the number of bits of dataperformed by the receiver side refers to as “puncturing” with respect torepetition performed by the transmitter side.

[0003] The following will explain the state in which data subjected torepetition by the transmitter side is subjected to puncturing by thereceiver side with reference to FIG. 1. FIG. 1 is a view illustrating aconventional puncturing method performed by the receiver side.

[0004] It is assumed that data sequence subjected to error correctioncoding is data sequence of 8 bits {d1, d2, d3, d4, d5, d6, d7, d8} inthe transmitter side in the upper portion of FIG. 1. It is also assumedthat the number of bits per one frame is 12 bits.

[0005] The transmitter side performs repetition such that an increase inenergy in the frame after rate matching becomes even in accordance witha given algorithm. Accordingly, d1, d3, d5, and d7 are repeatedrespectively and a data sequence after the repetition results in {d1,d1, d2, d3, d3, d4, d5, d5, d6, d7, d7, d8} as illustrated in the upperportion of FIG. 1. From data sequence after the repetition, it is shownthat arbitrary three continuous bits include two increased bits and onenon-increased bit, resulting in the equal distribution of an energyincrease in the data sequence.

[0006] On the other hand, the receiver side performs puncturing to datasubjected to repetition by the transmitter side as illustrated in thelower portion of FIG. 1. Namely, if the data sequence demodulated by thereceiver side includes {d1, d1, d2, d3, d3, d4, d5, d5, d6, d7, d7, d8}as illustrated in the lower portion of FIG. 1, the data sequence afterpuncturing results in {d1, d2, d3, d4, d5, d6, d7, d8}.

[0007] However, in the conventional puncturing method performed by thereceiver side, as is obvious from the lower portion of FIG. 1, datasubjected to repetition by the transmitter side (d1, d3, d5, and d7 inthe example illustrated in FIG. 1) is discarded to perform puncturing.

DISCLOSURE OF INVENTION

[0008] It is an object of the present invention is to provide a decodingapparatus and a decode processing method capable of enhancing the effectof error correction decoding through the effective use of data, which isconventionally discarded, at the time of puncturing performed by areceiver side.

[0009] In order to attain the above object, according to the presentinvention, data subjected to repetition by a transmitter side is addedwithout being discarded to increase likelihood of data at the time ofpuncturing performed by a receiver side, making it possible to enhancethe effect of error correction decoding.

BRIEF DESCRIPTION OF DRAWINGS

[0010]FIG. 1 is a view illustrating a conventional puncturing methodperformed by a receiver side;

[0011]FIG. 2 is a general block diagram illustrating a schematicconfiguration of a decoding apparatus according to Embodiment 1 of thepresent invention;

[0012]FIG. 3 is a general block diagram illustrating a schematicconfiguration of a puncturing section of the decoding apparatusaccording to Embodiment 1 of the present invention;

[0013]FIG. 4 is a view explaining the operation of puncturing that isperformed by the decoding apparatus according to Embodiment 1 of thepresent invention;

[0014]FIG. 5 is a general block diagram illustrating a schematicconfiguration of a puncturing section of the decoding apparatusaccording to Embodiment 2 of the present invention; and

[0015]FIG. 6 is a general block diagram illustrating a schematicconfiguration of a puncturing section of the decoding apparatusaccording to Embodiment 3 of the present invention.

BEST MODE FOR CARRYING OUT THE INVENTION

[0016] Embodiments of the present invention will be specificallyexplained with reference to the drawings accompanying herewith.

[0017] (Embodiment 1)

[0018]FIG. 2 is a general block diagram illustrating a schematicconfiguration of a decoding apparatus according to Embodiment 1 of thepresent invention. As illustrated in FIG. 2, a decoding apparatus 100includes a deinterleave section 101 that performs sorting, which isopposite to interleave performed by the transmitter side, a puncturingsection 102 that performs puncturing to data subjected to repetition bythe transmitter side, an error correction decoder 103 that performserror correction decoding using Viterbi coding, and a decoder 104 thatperforms error detection by CRC (Cyclic Redundancy Check) to obtainreceived data.

[0019] Moreover, the puncturing section 102 adopts the configuration ofFIG. 3. FIG. 3 is a general block diagram illustrating the schematicconfiguration of the puncturing section of the decoding apparatusaccording to Embodiment 1 of the present invention.

[0020] As illustrated in FIG. 3, the puncturing section 102 includesinput memory 201 for temporarily storing a data sequence inputted to thepuncturing section 102, a controller 202 for distinguishing data to beadded to control each configuration section, a switch 203 for selectingdata to be added, an adder 204 for adding selected data (data subjectedto repetition by the transmitter side), and output memory 205 fortemporarily storing a data sequence to be outputted from the puncturingsection 102.

[0021] An explanation will be next given of the operation of thedecoding apparatus having the aforementioned configuration. FIG. 4 is aview explaining the operation of puncturing that is performed by thedecoding apparatus according to Embodiment 1 of the present invention.

[0022] It is assumed that data sequence subjected to error correctioncoding is a data sequence of 8 bits {d1, d2, d3, d4, d5, d6, d7, d8} inthe transmitter side as illustrated in the upper portion of FIG. 4. Itis also assumed that the number of bits per one frame is 12 bits.

[0023] The transmitter side performs repetition in accordance with agiven algorithm (for instance, an algorithm that performs repetition orpuncturing such that an increase in energy in the frame becomes even asdescribed in “3G TS 25 212 ver.3.1.0” of 3GPP, which is thethird-generation standardization organization of mobile communicationsystem). Here, it is assumed that d1, d3, d5, and d7 are subjected torepetition. The data sequence after the repetition results in {d1, d1,d2, d3, d3, d4, d5, d5, d6, d7, d7, d8} as illustrated in the upperportion of FIG. 4. The data sequence after the repetition is interleavedand the resultant data sequence is transmitted to a receiver having thedecoding apparatus of this embodiment from the transmitter.

[0024] In the receiver, given radio processing, demodulation processing,and the like are provided to a signal received by an antenna 105 and theresultant signal is inputted to the decoding apparatus 100 in units oferror correction decoding.

[0025] In the decoding apparatus 100, the deinterleave section 101performs the sorting, which is opposite to interleave performed by thetransmitter side, to demodulated data. As a result, the data sequencesubjected to demodulation is illustrated as in the lower portion of FIG.4. Then, the demodulated data sequence including {d1, d1, d2, d3, d3,d4, d5, d5, d6, d7, d7, d8} is inputted to the puncturing section 102.

[0026] In the puncturing section 102, the demodulated data sequenceincluding {d1, d1, d2, d3, d3, d4, d5, d5, d6, d7, d7, d8} is oncestored in input memory 201. Then, data is read in order from data d1under control of the controller 202.

[0027] Moreover, the controller 202 distinguishes data to be subjectedto puncturing among data stored in input memory 201 in accordance withthe given algorithm which is the same as used in the transmitter side.

[0028] In the case of using the above algorithm, the controller 202distinguishes that data d1, d3, d5, and d7 should be subjected topuncturing among the demodulated data sequence including {d1, d1, d2,d3, d3, d4, d5, d5, d6, d7, d7, d8}. Then, the controller 202 controlsthe switch 203 such that the input memory 201 and the adder 204 areconnected to each other at the time of reading data d1 from the inputmemory 201. This inputs two data d1 (d1,d1) to the adder 204sequentially.

[0029] At this time, the controller 202 outputs a signal, indicative ofthe number of data to be subjected to puncturing, to the adder 204. Inother words, the controller 202 outputs a signal, which indicates thenumber of data to be added, to the adder 204. More specifically, thecontroller 202 controls the adder 204 to add adjacent data d1 (d1,d1)one time.

[0030] In accordance with this control, the adder 204 adds two data d1(d1,d1) sequentially inputted, and outputs the resultant data to theoutput memory 205. This stores data d1+d1 in the output memory 205 asillustrated in the lower portion of FIG. 4. The same operation as theabove is performed in connection with data d3, d5, d7.

[0031] While, the controller 202 distinguishes that data d2, d4, d6, andd8 do not have to be subjected to puncturing among the demodulated datasequence including {d1, d1, d2, d3, d3, d4, d5, d5, d6, d7, d7, d8}.Then, the controller 202 controls the switch 203 such that the inputmemory 201 and output memory 205 are directly connected to each other atthe time of reading data d2, d4, d6, and d8 from the input memory 201.This inputs data d2, d4, d6, and d8 to the output memory 205 from theinput memory 201 directly.

[0032] As a result of the above operation, the data sequence, which issubjected to puncturing and which is stored in the output memory 205,includes {d1+d1, d2, d3+d3, d4, d5+d5, d6, d7+d7, d8} as illustrated inthe lower portion of FIG. 4. Namely, in connection with data d1, d3, d5,and d7, a value of each data is increased by the number of data repeatedby the transmitter side, and the value of each data is doubled.

[0033] Then, the controller 202 reads the data sequence of {d1+d1, d2,d3+d3, d4, d5+d5, d6, d7+d7, d8} as one unit, namely, the data sequenceafter puncturing in units of error correction decoding, from the outputmemory 205, and outputs the data sequence to the error correctiondecoder 103. The error correction decoder 103 performs error correctiondecoding to this data sequence using, for example, Viterbi decoding, andthe like.

[0034] Thus, according to the decoding apparatus and the decodeprocessing method of this embodiment, data subjected to repetition bythe transmitter side is added without being discarded to increase thevalue of data at the time of puncturing. This makes it possible toincrease likelihood and to enhance the effect of error correctiondecoding. Accordingly, it is possible to improve the performance ofdecoding.

[0035] (Embodiment 2)

[0036] The decoding apparatus and the decode processing method ofEmbodiment 2 are different from those of Embodiment 1 in the point thatadded data is corrected when added data is overflowing.

[0037]FIG. 5 is a general block diagram illustrating a schematicconfiguration of a puncturing section of the decoding apparatusaccording to Embodiment 2 of the present invention. In addition, thesame reference numerals as Embodiment 1 are added to the sameconfigurations as Embodiment 1, and the specific explanation is omitted.

[0038] As illustrated in FIG. 5, in addition to Embodiment 1, thepuncturing section 102 includes an overflow corrector 401 thatdetermines whether added data is overflowing and corrects added datawhen it is overflowing.

[0039] An explanation will be next given of the operation of thepuncturing section 102 having the aforementioned configuration.

[0040] Since the allowable range of a data value with which the errorcorrection decoder 103 can deal is predetermined, the data value addedby the adder 204 exceeds the allowable range to cause overflow in somecases. Since the error correction decoder 103 cannot deal with the datavalue that exceeds the allowable range, and it cannot decode data thatis overflowing.

[0041] For this reason, the overflow corrector 401 determines whetherthe data value of data added by the adder 204 (d1+d1, d3+d3, d5+d5,d7+d7 in the example illustrated in FIG. 4) is overflowing and providescorrection processing to data in which an overflow occurs to fall withinthe allowable range.

[0042] More specifically, the determination and correction of theoverflow are carried out in the following way:

[0043] Namely, in the overflow corrector 401, the allowable range (lowerlimit D_(L) and upper limit D_(U)) of the data value with which theerror correction decoder 103 can deal is preset. When data D (D=d1+d1,d3+d3, d5+d5, d7+d7 in the example illustrated in FIG. 4) outputted fromthe adder 204 is D<D_(L) or D_(U)<D, the overflow corrector 401determines that an overflow occurs in connection with data D.

[0044] Then, the overflow corrector 401 turns data D into D_(L) whenD<D_(L), and turns data D into D_(U) when D_(U)<D, thereby providingcorrection processing to data in which the overflow occurs.

[0045] Thus, according to the decoding apparatus and the decodeprocessing method of this embodiment, it is possible to perform errorcorrection decoding in the usual way since added data is corrected toprevent the occurrence of overflow of added data when added data isoverflowing.

[0046] (Embodiment 3)

[0047] The decoding apparatus and the decode processing method ofEmbodiment 3 are different from those of Embodiment 1 in the point thatall data values of received data is reduced by the same rate to preventthe occurrence of overflow of added data.

[0048]FIG. 6 is a general block diagram illustrating a schematicconfiguration of a puncturing section of the decoding apparatusaccording to Embodiment 3 of the present invention. In addition, thesame reference numerals as Embodiment 1 are added to the sameconfigurations as Embodiment 1, and the specific explanation is omitted.

[0049] As illustrated in FIG. 6, in addition to Embodiment 1, thepuncturing section 102 includes an overflow preventer 501 that providesshift processing to all data to be inputted to make it possible toprevent the occurrence of overflow of added data.

[0050] An explanation will be next given of the operation of thepuncturing section 102 having the aforementioned configuration.

[0051] Similar to Embodiment 2, since the allowable range of the datavalue with which the error correction decoder 103 can deal ispredetermined, the data value added by the adder 204 exceeds theallowable range to cause overflow in some cases. Since the errorcorrection decoder 103 cannot deal with the data value that exceeds theallowable range, and it cannot decode data that is overflowing.

[0052] For this reason, the overflow preventer 501 provides the sameshift processing to all data d to be inputted (d=d1+d1, d2, d3+d3, d4,d5+d5, d6, d7+d7, d8 in the example illustrated in FIG. 4) so as toreduce the value of each data d by the same rate.

[0053] More specifically, shift processing is carried out in thefollowing way:

[0054] Namely, it is assumed that the number of data, which is requiredto perform puncturing, is N_(P). The overflow preventer 501 calculates ashift amount S in accordance with the following equation (1) to provideshift processing to all data to be inputted right by S bits.

S=max{Log ₂(N _(P))} (round up the decimal places)  (1)

[0055] Additionally, the number of data N_(P), which is required toperform puncturing, is sent to the overflow preventer 501 from thecontroller 202.

[0056] Shift processing is performed in this way and the value of eachdata d is decreased by ½^(s) times to prevent the occurrence ofoverflow.

[0057] Thus, according to the decoding apparatus and the decodeprocessing method of this embodiment, the data value of received data isreduced to prevent added data from overflowing, the overflow of addeddata does not occur to make it possible to perform error correctiondecoding correctly.

[0058] Moreover, according to the decoding apparatus and the decodeprocessing method of this embodiment, since all data values of receiveddata are reduced by the same rate, the ratio among the respective valuesamong the respective data is unchanged. In other words, there is no sucha case that information about the amount of data of small and large islost. Accordingly, as compared with Embodiment 2, the effect of errorcorrection decoding can be further improved as preventing added datafrom overflowing.

[0059] As explained above, according to the present invention, theeffect of error correction decoding can be enhanced through theeffective use of data, which is conventionally discarded, at the time ofpuncturing performed by a receiver side.

[0060] This application is based on the Japanese Patent Application No.2000-060051 filed on Mar. 6, 2000, entire content of which is expresslyincorporated by reference herein.

INDUSTRIAL APPLICABILITY

[0061] The decoding apparatuses according to Embodiments 1 to 3 can beapplied to a mobile station apparatus and a base station apparatus,which are used in a mobile communication system.

1. A decoding apparatus comprising: a distinguisher for distinguishingspecific data repeated for rate matching at a transmitter side within areceived data sequence transmitted from the transmitter side; an adderfor adding the specific data to data subject to repeat at thetransmitter side to increase likelihood of data according to the resultof distinct; and a decoder for providing error correction decoding to areceived data sequence including data added by said adder.
 2. Thedecoding apparatus according to claim 1, wherein said adder adds thespecific data corresponding to the number of data increased at thetransmitter side.
 3. The decoding apparatus according to claim 1,further comprising a corrector for determining whether or not the valueof added data is in the range of the data value with which said decodercan deal, and correct the added data to a data value with which saiddecoder can deal when said the added data is in the range of the datavalue with which said decoder cannot deal.
 4. The decoding apparatusaccording to claim 1, further comprising a reducer for reducing all datavalues of received data such that added data falls within the range withwhich said decoder can deal.
 5. The decoding apparatus according toclaim 4, wherein said reducer reduces the data values of received databy providing bit shift processing to the received data.
 6. A mobilestation apparatus including a decoding apparatus, said decodingapparatus comprising: a distinguisher for distinguishing specific datarepeated for rate matching at a transmitter side within a received datasequence transmitted from the transmitter side; an adder for adding thespecific data to data subject to repeat at the transmitter side toincrease likelihood of data according to the result of distinct; and adecoder for providing error correction decoding to a received datasequence including data added by said adder.
 7. A base station apparatusincluding a decoding apparatus, said decoding apparatus comprising: adistinguisher for distinguishing specific data repeated for ratematching at a transmitter side within a received data sequencetransmitted from the transmitter side; an adder for adding the specificdata to data subject to repeat at the transmitter side to increaselikelihood of data according to the result of distinct; and a decoderfor providing error correction decoding to a received data sequenceincluding data added by said adder.
 8. A decode processing methodcomprising the steps of: distinguishing specific data repeated for ratematching at a transmitter side within a received data sequencetransmitted from the transmitter side; adding the specific data to datasubject to repeat at the transmitter side to increase likelihood of dataaccording to the result of distinct; and providing error correctiondecoding to a received data sequence including data added by said adder.